package eu.dominicum.ft.pd.mao;

import eu.dominicum.ft.pd.Country;

import javax.inject.Inject;
import javax.inject.Named;
import javax.validation.Valid;

/**
 * Method Arguments Object for
 * {@link eu.dominicum.ft.pd.Location#make(MakeLocationMAO)}.
 *
 * @author Harry Klerks
 * @since 2013M1
 */
@Named
public final class MakeLocationMAO {

    /**
     * Name.
     */
    private String name;

    /**
     * Country.
     */
    private Country country;

    /**
     * MakeCountryMAO.
     */
    @Inject
    @Valid
    private MakeCountryMAO makeCountryMAO;

    /**
     * Country ID.
     */
    private Long countryId;

    /**
     * .
     *
     * @return String
     */
    public String getName() {
        return name;
    }

    /**
     * .
     *
     * @param newName -
     */
    public void setName(final String newName) {
        this.name = newName;
    }

    /**
     * .
     *
     * @return Country
     */
    public Country getCountry() {
        return country;
    }

    /**
     * .
     *
     * @param newCountry -
     */
    public void setCountry(final Country newCountry) {
        this.country = newCountry;
    }

    /**
     * .
     *
     * @return MakeCountryMAO
     */
    public MakeCountryMAO getMakeCountryMAO() {
        return makeCountryMAO;
    }

    /**
     * .
     *
     * @param newMakeCountryMAO -
     */
    public void setMakeCountryMAO(final MakeCountryMAO newMakeCountryMAO) {
        this.makeCountryMAO = newMakeCountryMAO;
    }

    /**
     * .
     *
     * @param newCountryId -
     */
    public void setCountryId(final Long newCountryId) {
        this.countryId = newCountryId;
    }

    /**
     * .
     *
     * @return Long
     */
    public Long getCountryId() {
        return countryId;
    }
}
